package com.zhang.goods.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhang.common.dto.SkuSearchDto;
import com.zhang.goods.entity.SkuInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhang.goods.vo.ConfirmOrderSkuVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * sku信息表 Mapper 接口
 * </p>
 *
 * @author 创世神
 * @since 2023-10-04
 */
@Mapper
public interface SkuInfoMapper extends BaseMapper<SkuInfo> {

    List<ConfirmOrderSkuVo> getOrderConfirmSkuInfo(List<Long> skuIds);

    IPage<SkuInfo> getNewSkuList(IPage<SkuInfo> page);

    IPage<SkuInfo> getSkuListPage(IPage<SkuInfo> skuInfoPage, @Param("skuSearchDto") SkuSearchDto skuSearchDto);

    void saleSku(@Param("skuId") Long skuId, @Param("saleCount") Integer skuQuantity);


    /**
     *
     * @param skuId
     * @return {@link List}<{@link SkuInfo}>
     */
    List<SkuInfo> getStoreOtherSku(String skuId);

    List<SkuInfo> getUpSkuList(@Param("pageNum") int pageNum,@Param("pageSize") int pageSize);
}
